<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Promise</title>
</head>
<body>
<script>
  /*
  * Promise是如何解决回调地狱的问题的
  *  1. 将异步操作和回调函数定义成对象的两个方法 两个方法操作的是对象身上的属性 不产生耦合
  *
  *  2. then方法返回的是一个新的Promise对象，后续的异步操作可以使用链式操作进行 将操作扁平化
  *
  * */
  new _Promise(((resolve, reject) => {
       setTimeout(()=>{
         resolve(1)
       })
  })).then(value => {
   /* 如果then不返回一个新的Promise对象的话那么第二次异步操作还要在这里进行 这样就产生了回调地狱
     new Promise()...
    */
  })
</script>
</body>
</html>